20 DIM GB%(163839),WG%(38399),MG%(38399),MGB%(38399),CM%(5985),PP%(15),PPC%(127),BUT%(50,3),BV%(50,1),GC%(9),PSP%(927),HSP%(927),PSP2%(7423),PSP3%(7423),PAL%(255,3),FLG%(721,3),GAV%(255),RAV%(255),BAV%(255),CDDAT%(10),CDT%(3),CP&(127),WFP%(8191)
25 DIM EF1%(927),EF2%(927),EF3%(927),EF4%(927),GS!(32),STMP%(23039),STP0%(3839),CUTP%(19199),WPP%(3),PALO%(255,3)
28 DIM STPM0%(63),STPM1%(63),STPM2%(63),STPM3%(63),STPM4%(63),STPM5%(63),STPM6%(63),STPM7%(63),STPM8%(63),STPM9%(63),STPM10%(63),STPM11%(63),STPM12%(63),STPM13%(63),STPM14%(63)
30 DIM FILE_NAME$(256),RADBUT$(9),RETFLG(9),XY(20,4),WC(12) 'for File Dialog
40 DEF FNFF$(F$)=LEFT$(KLEFT$(F$,KINSTR(F$+" .",".")-1)+SPACE$(8),8)+LEFT$(KMID$(F$,KINSTR(F$+" .","."),4)+SPACE$(4),4):DEF FNF$(F)=RIGHT$(" "+STR$(F),3):DEF FNMP$(A&)=MID$(MKL$(A& AND &HFFFF00),2,2)
45 DEF FNP1$(A&)=CHR$(A& AND &HFF):DEF FNP2$(A&)=CHR$((A& AND &HFF00)\256):
60 INFOR$=STRING$(200,0):DIR$=SPACE$(65):DRV_SET$=STRING$(26,0):FILENAME$=SPACE$(15):KAKUNO$=FILENAME$:PATH_ALL$=WC$:DUMMYY$=SPACE$(14):DUMMYP$="."+CHR$(0):FOR A=0 TO 256:FILE_NAME$(A)=SPACE$(16):NEXT:FOR A=0 TO 9:RADBUT$(A)=SPACE$(60):NEXT
225 CMDV=0:MENX=0:COLV=0:PALF=1:SP=1:WREF=0:DOF=8:PS=16:MDV=9:FOR A=0 TO 15:PP%(A)=-1:NEXT:GOSUB *COLDISP:EX=170:EY=200:FOR A=0 TO 255:GAV%(A)=-1:RAV%(A)=1:BAV%(A)=-1:NEXT:PST=1:STP=20:NZF=0:PCHG=3:BWF=0:PCF=0:WFV=1:WFCMD=1:UNDOV=23
230 RESTORE *B_DATA:READ CMDN:FOR A=0 TO CMDN-1:FOR B=0 TO 3:READ BUT%(A,B):NEXT:READ BV%(A,0):READ BV%(A,1):NEXT:GOSUB *CDSTART:RETURN
820 IF SP=1 THEN COLV=COLV+1:IF COLV>255 THEN COLV=0
830 RETURN
850 *PSET
860 IF PCF=0 THEN PUT@ (X-DOF,Y-DOF)-(X-DOF+15,Y-DOF+15),PP%,PSET,%COLV ELSE PUT@A (X-DOF,Y-DOF)-(X-DOF+15,Y-DOF+15),PPC%,MATTE,,,%255
870 IF SP=1 THEN COLV=COLV+1:IF COLV>255 THEN COLV=0
880 RETURN
1000 *EVENT_LOOP:MOUSE 1,,,1:A=MOUSE(6,0):A&=FRE(1):A&=CALLM(OFFSET&,8):IF (A& AND 2)=2 THEN LINE (MENX+8,460)-(MENX+149,469),PSET,0,BF:SYMBOL (MENX+8,461),RIGHT$(" "+STR$(FRE(1)),14)+"free",1,.5!,7
1010 WHILE MOUSE(2,0)=0:IF MOUSE(2,1)<>0 THEN WHILE MOUSE(6,1)=0:WEND:GOSUB *MENUMOVE
1020 GOSUB *PAL_SHIFT:GOSUB *CDCHK
1030 'GOSUB *DO_FLG
1090 WEND:GOSUB *MENUCHK:IF YN=1 THEN WHILE MOUSE(6,0)=0:WEND ELSE 1510
1500 MX=MOUSE(0):MY=MOUSE(1):GOSUB *CHECK_BUTTON
1510 ON CMDV+1 GOSUB *LOOP_RET,*ABOUT,*EXIT,*LOAD,*SAVE,*DOT_MODE,*LINE_MODE,*FREE_MODE,*PAINT_MODE,*ERASER_MODE,*COLOR,*CLS,*SPFLG,*PALFLG,*PENSIZE,*BOX,*BOX_FILL,*PENPATTERN,*COLORPEN,*COLORPEN2,*EFFECT,*STAMP,*WREFLG,*UNDO,*TEXT
1520 *LOOP_RET:GOSUB *COLDISP:GOTO *EVENT_LOOP
1600 *CHECK_BUTTON:OCMDV=CMDV:OSTF=STF:CMDV=0:C=0:MX=MX-MENX:IF BWF=1 THEN LINE (BCX0+MENX,BCY0)-(BCX1+MENX,BCY1),XOR,7,BF:BWF=0
1610 FOR A=0 TO CMDN-1
1620 IF BUT%(A,0)=<MX AND BUT%(A,1)=<MY AND BUT%(A,2)=>MX AND BUT%(A,3)=>MY THEN CMDV=BV%(A,0):C=A:A=CMDN:STF=0
1630 NEXT:IF CMDV<>0 AND (BV%(C,1) AND 3)=1 THEN LINE (BUT%(C,0)+MENX,BUT%(C,1))-(BUT%(C,2)+MENX,BUT%(C,3)),XOR,7,BF:BCX0=BUT%(C,0):BCY0=BUT%(C,1):BCX1=BUT%(C,2):BCY1=BUT%(C,3):CMDFLG=C:BWF=1
1640 IF CMDV<>0 AND (BV%(C,1) AND 3)<>1 THEN LINE (BCX0+MENX,BCY0)-(BCX1+MENX,BCY1),XOR,7,BF:BWF=1
1650 RETURN
1700 *MENUCHK
1710 MX=MOUSE(0):IF MENX=0 THEN 1730
1720 IF 480>MX THEN YN=0:RETURN ELSE YN=1:RETURN
1730 IF 160<MX THEN YN=0:RETURN ELSE YN=1:RETURN
2000 *EXIT:GET@A (0,0)-(639,511),GB%:GOSUB *ERR_GET_PIC:ERRV=0:M$="AmazingPAINTを終了します":GOSUB *TORIJIK:IF YN=0 THEN RETURN ELSE END
3610 GOSUB *MOS_WAIT:WHILE MOUSE(6,0)=0:GOSUB *PAL_SHIFT:WEND:A=MOUSE(3,0):GOSUB *WRTLINE:WAIT 30:IF MOUSE(3,0)=0 THEN *WRT_LINE ELSE IF MX<>MOUSE(0) OR MY<>MOUSE(1) THEN *WRT_LINE ELSE WHILE MOUSE(6,0)=0:WEND
6010 MFLG=0:WHILE MFLG=0:GOSUB *PAL_SHIFT:MFLG=ABS(MOUSE(2,0)+MOUSE(2,1)*2):WEND:IF (MFLG AND 2)=0 THEN WHILE MOUSE(6,0)=0:GOSUB *PAL_SHIFT:WEND::GET@A (0,0)-(639,479),GB%:LINE (0,0)-(1023,511),PSET,%255,BF ELSE WHILE MOUSE(6,1)=0:GOSUB *PAL_SHIFT:WEND
6550 MX=(MX-7) \ 18:MY=(MY-384) \ 18:IF MX<0 OR MX>7 OR MY<0 OR MY>3 THEN *PS_LOOP
6560 LINE (MX*18+MENX+8,MY*18+384)-(MX*18+MENX+23,MY*18+399),XOR,7,BF:GET@ (MX*18+MENX+8,MY*18+384)-(MX*18+MENX+23,MY*18+399),PP%,%255:PS=MY*4+(MX\2)+1:DOF=PS\2:MDV=DOF+1
6650 MX=(MX-7) \ 18:MY=(MY-384) \ 18:IF MX<0 OR MX>7 OR MY<0 OR MY>3 THEN *PP_LOOP
6660 LINE (MX*18+MENX+8,MY*18+384)-(MX*18+MENX+23,MY*18+399),XOR,7,BF:GET@ (MX*18+MENX+8,MY*18+384)-(MX*18+MENX+23,MY*18+399),PP%,%255:PS=16:DOF=PS\2:MDV=DOF+1
8110 IF YN=0 THEN PASTEL 180:LINE (MENX+BUT%(FLG%,0),BUT%(FLG%,1))-(MENX+BUT%(FLG%,2),BUT%(FLG%,3)),PASTEL,0,BF ELSE PUT@A (MENX+BUT%(FLG%,0),BUT%(FLG%,1))-(MENX+BUT%(FLG%,2),BUT%(FLG%,3)),FLG%,,,,,722*(FLG%-1)
10140 *EF_SEL:LINE (MX*36+MENX+8,MY*36+384)-(MX*36+MENX+41,MY*36+417),XOR,7,BF:EFCMD=(EFM-1)*8+MY*4+MX:IF EFCMD=15 THEN GOSUB *MENUOFF ELSE GOSUB *UNDOGET
10150 MOUSE 1,,,0:SWAP OCOLV,COLV:GOSUB *VW3
10160 ON EFCMD+1 GOSUB *COPYH,*COPYV,*MIRRORV,*MIRRORH,*SYMM4,*SYMM9,*WALL,*POSTER,*XORR,*XORC,*XORV,*XORH,*SHIFTV,*SHIFTH,*SINWAVE,*PILE,*CEBIG,*CEBIG,*CEBIG,*CEBIG,*EFFG,*EFFG,*EFFG,*EFFG,*CAMERA,*CUTOUT,*CUTSHADOW,*ZOOM,*MOSAIC,*FACET,*PMETAL,*POST
11260 WHILE MFLG=0:MFLG=ABS(MOUSE(2,0)+MOUSE(2,1)*2)
11270 OMX=MX:OMY=MY:MX=MOUSE(0):MY=MOUSE(1):IF OMX<>MX OR OMY<>MY THEN LINE (OMX,OMY)-(OMX+MX0-1,OMY+MY0-1),XOR,7,B:LINE (MX,MY)-(MX+MX0-1,MY+MY0-1),XOR,7,B
11280 WEND:IF (MFLG AND 1)=1 THEN WHILE MOUSE(6,0)=0:WEND:LINE (MX,MY)-(MX+MX0-1,MY+MY0-1),XOR,7,B:MOUSE 4,0,0,639,479:RETURN
11290 WHILE MOUSE(6,1)=0:WEND:LINE (MX,MY)-(MX+MX0-1,MY+MY0-1),XOR,7,B:MOUSE 4,0,0,639,479:RETURN *MOSBRET
11820 *GS_LOOP:MFLG=0:WHILE MFLG=0:MFLG=ABS(MOUSE(2,0)+MOUSE(2,1)*2):WEND:IF (MFLG AND 2)=2 THEN WHILE MOUSE(6,1)=0:WEND:RETURN *BASERET
11830 WHILE MOUSE(6,0)=0:WEND:MX=MOUSE(0):MY=MOUSE(1):IF MX<MENX+7 OR MX>MENX+150 OR MY<455 OR MY>470 THEN *GS_LOOP
11840 MX=MX-MENX:IF MX<43 THEN GSV=GSV-1:IF GSV<0 THEN GSV=GS
11850 IF MX>113 THEN GSV=GSV+1:IF GSV>GS THEN GSV=0
11860 IF MX>42 AND MX<114 THEN *GS_LOOP_OUT
11870 *GS_PUT:LINE (MENX+26,386)-(MENX+131,434),PSET,0,BF,7:IF LEN(STR$(GS!(GSV)))>4 THEN SYMBOL (MENX+37,388),RIGHT$(" "+STR$(GS!(GSV)),4),2,3,0,,,3:GOTO *GS_LOOP ELSE SYMBOL (MENX+37,388),RIGHT$(" "+STR$(GS!(GSV)),3),3,3,0,,,3:GOTO *GS_LOOP
12930 FOR X=0 TO SQR(GS!(GSV))-1:FOR Y=0 TO SQR(GS!(GSV))-1:PUT@A (X*MX0,Y*MY0)-(X*MX0+MX0-1,Y*MY0+MY0-1),WG%:LINE (X*MX0,Y*MY0)-(X*MX0+MX0-1,Y*MY0+MY0-1),PSET,0,B:NEXT:NEXT
14210 FOR Y=0 TO 3:GOSUB *POSTRET:GET@A (0,Y*120)-(639,Y*120+119),WG%:LINE (0,Y*120)-(639,Y*120+119),PSET,7,BF:GOSUB *POSTSET:PUT@A (0,Y*120)-(639,Y*120+119),WG%:NEXT
14230 *POSTRET
14240 OUT &H458,0:OUT &H45A,-1,2:OUT &H458,1:OUT &H45A,-1,2:RETURN
15020 EFFGF=0:GOSUB *MOS_BOX:LINE (MX,MY)-(MX+MX0-1,MY+MY0-1),XOR,6,B:LDX=MX:LDY=MY:XL0=LDX+MX0-1:YL0=LDY+MY0-1:A&=CALLM(OFFSET&,8):IF (A& AND 4)=4 OR GSV=0 THEN EFFGF=1
15030 GOSUB *EFF0_MOS
15040 LINE (LDX,LDY)-(XL0,YL0),XOR,6,B:IF GSV=0 THEN GET@A (0,0)-(639,479),GB% ELSE GET@A (LDX,LDY)-(XL0,YL0),WG%
15050 IF EFFGF=1 THEN VIEW (LDX,LDY)-(XL0,YL0):WINDOW (LDX,LDY)-(XL0,YL0) ELSE GOSUB *VW3
15240 OMX=MX:OMY=MY:MX=MOUSE(0):MY=MOUSE(1):IF OMX<>MX OR OMY<>MY THEN LINE (OMX-(MX0\2),OMY-(MY0\2))-(OMX+(MX0\2)-1,OMY+(MY0\2)-1),XOR,7,B:LINE (MX-(MX0\2),MY-(MY0\2))-(MX+(MX0\2)-1,MY+(MY0\2)-1),XOR,7,B
15540 WHILE MFLG=0:MFLG=ABS(MOUSE(2,0)+MOUSE(2,1)*2)
15550 OMX=MX:OMY=MY:MX=MOUSE(0):MY=MOUSE(1):IF OMX<>MX OR OMY<>MY THEN PUT@ (OMX-(MX0\2),OMY-(MY0\2))-(OMX+(MX0\2)-1,OMY+(MY0\2)-1),CUTP%,XOR,7:PUT@ (MX-(MX0\2),MY-(MY0\2))-(MX+(MX0\2)-1,MY+(MY0\2)-1),CUTP%,XOR,7
15560 WEND:IF (MFLG AND 1)=1 THEN WHILE MOUSE(6,0)=0:WEND ELSE WHILE MOUSE(6,1)=0:WEND
16310 MX0=CUTX:MY0=CUTY:GOSUB *MOS_PAT:IF (MFLG AND 2)=2 THEN RETURN ELSE PUT@ (MX,MY)-(MX+MX0-1,MY+MY0),CUTP%,XOR,6:LDX=MX:LDY=MY:GOSUB *MOS_PAT:PUT@ (LDX,LDY)-(LDX+MX0-1,LDY+MY0-1),CUTP%,XOR,6:IF (MFLG AND 2)=2 THEN RETURN
16420 FOR A=0 TO 14:GET@A (0,A*32)-(639,A*32+31),WG%:PUT@A (0,480)-(639,511),WG%:PUT@A (0,A*32)-(639,A*32+31),GB%,PSET,,,,A*10240:GET@A (0,480)-(639,511),GB%,A*10240:NEXT:RETURN
16500 *ZOOM
16510 GSV=3:GS=6:GS!(0)=.125!:GS!(1)=.25!:GS!(2)=.5!:GS!(3)=2:GS!(4)=3:GS!(5)=4:GS!(6)=7:M$=" <ZOOM倍率>":GOSUB *GETSIZE:IF GS!(GSV)<1 THEN MX0=640:MY0=480 ELSE ON GSV-1 GOSUB *WAL0,*WAL1,*WAL2,*WAL3
16520 GOSUB *MOS_BOX:WFCMD=1:A&=CALLM(OFFSET&,8)
16530 IF GS!(GSV)<1 THEN *ZOOMOUT
16540 GET@A (MX,MY)-(MX+MX0-1,MY+MY0-1),WG%:IF (A& AND 16)<>16 THEN LINE (0,0)-(639,479),PSET,0,BF
19050 FOR A=0 TO CP:WPP%(0)=VAL("&H"+LEFT$(RIGHT$("00000000"+HEX$(CP&(A)),8),2)):WPP%(1)=(CP&(A) AND &HFF0000)\65536:WPP%(2)=(CP&(A) AND &HFF00)\256:WPP%(3)=CP&(A) AND &HFF
19060 FOR I=0 TO 3
19070 G&=G&+((WPP%(I) AND &HE0)\32):R&=R&+((WPP%(I) AND &H1C)\4):B&=B&+(WPP%(I) AND &H3)
19540 FOR Y=-WFV TO 479 STEP WFV*2:FOR X=-WFV TO 639 STEP WFV*2:CIRCLE (X,Y),WFV\2,7,,,,F,PSET:CIRCLE (X+WFV,Y+WFV),WFV\2,7,,,,F,PSET:IF INKEY$=CHR$(27) THEN X=1000:Y=1000
19545 NEXT:NEXT:IF X>990 THEN RETURN
19550 GET@ (0,0)-(639,479),WG%,0:PUT@A (0,0)-(639,479),GB%,AND:PUT@ (0,0)-(639,479),WG%,PSET,%COLV:IF (A& AND 16)<>16 THEN RETURN
19560 IF (A& AND 4)=4 THEN *PMETALPR
19570 PASTEL 64:DEF PEN 0,WFV\4:FOR Y=-WFV TO 479 STEP WFV*2:FOR X=-WFV TO 639 STEP WFV*2:CIRCLE (X,Y),WFV\2,7,,,,,PASTEL:CIRCLE (X+WFV,Y+WFV),WFV\2,7,,,,,PASTEL:IF INKEY$=CHR$(27) THEN X=1000:Y=1000
19575 NEXT:NEXT:RETURN
19580 *PMETALPR:CP&(0)=&HCCCC:CP&(1)=&H3333:FOR A=1-(WFV\8) TO WFV\8:FOR Y=-WFV TO 479 STEP WFV*2:FOR X=-WFV TO 639 STEP WFV*2:CIRCLE (X,Y),WFV\2+A,7,,,,,,CP&(A AND 1):CIRCLE (X+WFV,Y+WFV),WFV\2+A,7,,,,,,CP&(A AND 1):IF INKEY$=CHR$(27) THEN X=1000:Y=1000
19590 NEXT:NEXT:RETURN
19600 *MESH
19610 GSV=6:GS=11:FOR A=0 TO GS:GS!(A)=(A+1)*8:NEXT:M$=" < 線の間隔 >":GOSUB *GETSIZE:WFV=GS!(GSV):B&=A&:A&=CALLM(OFFSET&,8)
19620 GOSUB *VW3:A=(GSV\4)+1:IF (B& AND 4)<>4 THEN PASTEL 128:DEF PEN 0,A+2:OCOLV=0:SWAP OCOLV,COLV:GOSUB *MESH_WRT_P:SWAP OCOLV,COLV:IF X>990 THEN RETURN
19630 PASTEL 256:DEF PEN 0,A:GOSUB *MESH_WRT_P:IF X>990 THEN RETURN
19640 IF (A& AND 20)=0 THEN RETURN
19650 IF (A& AND 4)<>4 THEN PASTEL 64:DEF PEN 0,A*3:GOSUB *MESH_WRT_P:RETURN
19660 DEF PEN 0,1:CP&(0)=&HCCCC:CP&(1)=&H3333:FOR I=-A TO A+A:FOR Y=-WFV TO 479+WFV STEP WFV+A*2:FOR X=0 TO 639+WFV STEP WFV+A
19670 CONNECT (X+I,Y)-STEP(WFV\2-A*4,WFV\2-A*4)-STEP(A,A)-STEP(A*3,A*3)-STEP(0,A*2)-STEP(-A*3,A*3)-STEP(-A,A)-STEP(-(WFV\2-A*4),WFV\2-A*4)-STEP(0,A*2),%COLV,PSET,N,CP&(I AND 1)
19680 CONNECT (X+WFV-1+I,Y+1)-STEP(-(WFV\2-A*4),WFV\2-A*4)-STEP(-A,A)-STEP(-A*3,A*3)-STEP(0,A)-STEP(A*3,A*3)-STEP(A,A)-STEP(WFV\2-A*4,WFV\2-A*4)-STEP(0,A*2),%COLV,PSET,N,CP&(I AND 1):IF INKEY$=CHR$(27) THEN X=1000:Y=1000:I=1000
19690 NEXT:NEXT:NEXT:RETURN
19700 *MESH_WRT_P:FOR Y=-WFV TO 479+WFV STEP WFV+A*2:FOR X=0 TO 639+WFV STEP WFV+A
19820 SYMBOL (10+MENX,432),"XOR",1,1,0:SYMBOL (10+MENX,452),"MATTE",1,1,0:MOUSE 1,,,1
19830 *PGS_LOOP:MFLG=0:WHILE MFLG=0:MFLG=ABS(MOUSE(2,0)+MOUSE(2,1)*2):WEND:IF (MFLG AND 2)=2 THEN WHILE MOUSE(6,1)=0:WEND:GOSUB *COLDISP:GOSUB *MENUOFF:RETURN
19840 WHILE MOUSE(6,0)=0:WEND:MX=MOUSE(0):MY=MOUSE(1)
19850 IF MX<MENX+7 OR MY<372 OR MX>MENX+150 OR MY>467 THEN *PGS_LOOP
19860 MY=(MY-372)\20:IF MY<0 OR MY>4 THEN *PGS_LOOP
30400 MOUSE 4,EX+170,EY+18,EX+281,EY+36:A$="":WHILE MOUSE(2,0)=0 AND A$<>CHR$(13) AND A$<>CHR$(24):A$=INKEY$:WEND:IF A$="" THEN WHILE MOUSE(6,0)=0:WEND:YN=MOUSE(0)\(EX+231):GOSUB *ERR_PUT_PIC:RETURN
35010 FOR A=0 TO 14:GET@A (0,A*32)-(639,A*32+31),WG%:PUT@A (0,480)-(639,511),WG%:PUT@A (0,A*32)-(639,A*32+31),GB%,PSET,,,,A*10240:GET@A (0,480)-(639,511),GB%,A*10240:NEXT:RETURN
40410 *CDCONTT:IF CDC=0 OR CDC=2 OR CPN=0 THEN RETURN ELSE ON ERROR GOTO *CDERR
40420 CDINF CDDAT%:CDC=CDDAT%(1):CDMN=CDDAT%(5)
40430 IF CDC=2 THEN *CDSRET
40440 CDSTAT CDDAT%:IF CDDAT%(1)=1 THEN *CDSRET
40450 CD PLAY (CDT%(0),CDT%(1),CDT%(2)):CDP=0:GOTO *CDSRET
41000 *PAL_INI
41010 A=0:FOR G=0 TO 7:FOR R=0 TO 7:FOR B=0 TO 3:PAL%(A,0)=G*32+31*SGN(G):PAL%(A,1)=R*32+31*SGN(R):PAL%(A,2)=B*64+63*SGN(B):A=A+1:NEXT:NEXT:NEXT:PALETTE
41020 RETURN
41030 *PALETTE_CHANGE
41040 FOR A=0 TO 255:PALETTE A,[PAL%(A,0),PAL%(A,1),PAL%(A,2)]:NEXT:RETURN
41060 *PAL_SHIFT:IF PALF=0 THEN RETURN ELSE IF STP=0 THEN STP=1
41070 FOR A=PST TO 254 STEP 32
41080 G=PAL%(A,0):R=PAL%(A,1):B=PAL%(A,2)
41090 IF (A MOD 3)=PCHG THEN SWAP G,R:SWAP B,R:GOTO 41160 ELSE G=G+GAV%(A):R=R+RAV%(A):B=B+BAV%(A)
41510 FOR A=0 TO 255:OUT &HFD90,A:PAL%(A,2)=INP(&HFD92):PAL%(A,1)=INP(&HFD94):PAL%(A,0)=INP(&HFD96):NEXT:FOR A=0 TO 255:FOR I=0 TO 2:PALO%(A,I)=PAL%(A,I):NEXT:NEXT:RETURN
42000 *PAL_INI_ORG
42010 FOR A=0 TO 255:PALETTE A,[PALO%(A,0),PALO%(A,1),PALO%(A,2)]:FOR I=0 TO 2:PAL%(A,I)=PALO%(A,I):NEXT:NEXT
42020 RETURN
60000 *FILE_DIALOG:ON ERROR GOTO *エラー処理
60010 ON RIFLG+1 GOTO *RADBUT_IN0,*RADBUT_IN1,*RADBUT_IN2
63390 IF KTYPE(FDMT$,1)=1 AND POS(0)=FDX+37 THEN PRINT " ";
63400 IF POS(0)>FDX+37 THEN LOCATE FDX+4,FDY+17:IF LEN(FDMT$)>34 THEN IF KTYPE(FDMT$,KLEN(FDMT$))=1 THEN FDMT$=KLEFT$(FDMT$,KLEN(FDMT$)-1) ELSE FDMT$=LEFT$(FDMT$,34)
63410 PRINT KLEFT$(FDMT$,1);:IF LEN(FDMT$)<>0 THEN FDMT$=KRIGHT$(FDMT$,KLEN(FDMT$)-1)